@import "./@left_menu";
@import "./@grids";

/** 通用 **/
.clear {
	clear: both;
}

.hidden {
	display: none;
}

pre {
	white-space: pre-wrap;
}

a.disabled, a.disabled:hover, a.disabled:active, span.disabled {
	color: #ccc !important;
}

a.enabled, span.enabled, span.green {
	color: #21ba45;
}

span.grey, label.grey, p.grey {
	color: grey !important;
}

p.grey {
	margin-top: 0.8em;
}

span.red, pre.red {
	color: #db2828;
}

span.blue {
	color: #4183c4;
}

span.orange {
	color: #ff851b;
}

pre:not(.CodeMirror-line) {
	font-family: Lato, 'Helvetica Neue', Arial, Helvetica, sans-serif !important;
}

tbody {
	background: transparent;
}

.table-box {
	margin-top: 1em;
	overflow-x: auto;
}

.table-box::-webkit-scrollbar {
	height: 6px;
}

.table.width30 {
	width: 30em !important;
}

.table.width35 {
	width: 35em !important;
}

.table.width40 {
	width: 40em !important;
}

.table.width1024 {
	width: 1024px !important;
}

.table th, .table td {
	font-size: 0.9em !important;
}

.table tr.active td {
	background: rgba(0, 0, 0, 0.01) !important;
}

p.comment, div.comment {
	color: rgba(0, 0, 0, 0.5);
	padding-top: 0.4em;
	font-size: 1em;
}

p.comment em, div.comment em {
	font-style: italic !important;
}

.truncate {
	white-space: nowrap;
	-ms-text-overflow: ellipsis;
	overflow: hidden;
	text-overflow: ellipsis;
}

div.margin, p.margin {
	margin-top: 1em;
}

.opacity-mask {
	opacity: 0.3;
}

/** 操作按钮容器 **/
.op.one {
	width: 4em;
}

.op.two {
	width: 7.4em;
}

.op.three {
	width: 9em;
}

.op.four {
	width: 10em;
}

/** 主菜单 **/
.main-menu {
	.ui.menu {
		width: 9.5em !important;
		border-radius: 0 !important;


		// menu
		.item.separator {
			border-top: 1px rgba(0, 0, 0, 0.2) solid;
			height: 1px;
			min-height: 0;
			padding: 0;
		}
	}
}

@media screen and (max-width: 512px) {
	.main-menu .ui.menu {
		width: 3.6em !important;

		.item.separator {
			display: none;
		}
	}

	.main-menu .ui.menu .item {
		padding-top: 2em;
		padding-bottom: 2.4em;
	}

	.main-menu .ui.menu .item span {

	}
}

.main-menu .ui.labeled.icon.menu .item {
	font-size: 0.9em;
}

.main-menu {
	.ui.menu {
		padding-bottom: 3em;


		.item {
			.subtitle {
				display: none;
			}
		}

		.item.expend .subtitle {
			display: block;
			font-size: 10px;
			padding-left: 2.0em;
			margin-top: 0.5em;
			color: grey;
		}

		@media screen and (max-width: 512px) {
			.item.expend .subtitle {
				display: none;
			}
		}

		.sub-items {
			.item {
				padding-left: 2.8em !important;
				padding-right: 0.4em !important;

				.icon {
					position: absolute;
					left: 1.1em;
					top: 0.93em;
				}

				.label {
					margin-left: 0;
					margin-right: 0;
					padding-left: 0.4em;
					padding-right: 0.4em;
					min-width: 2em;
				}
			}

			@media screen and (max-width: 512px) {
				.item {
					padding-left: 1em !important;
				}
			}

			.item.active {
				background-color: #2185d0 !important;
			}
		}
	}
}

/** 扩展UI **/
.field.text {
	padding: .5em;
}

.form .fields:not(.inline) {
	.field {
		margin-bottom: 0.5em !important;

		.button {
			min-width: 5em;
		}
	}
}

/** body **/
@keyframes blink {
	from {
		opacity: 0.1;
	}
	to {
		opacity: 0.8;
	}
}

@keyframes rotation {
	from {
		transform: rotate(0);
	}
	to {
		transform: rotate(360deg);
	}
}

body .ui.menu .item .blink {
	animation: blink 1s infinite;
}

body .ui.menu .item:not(:hover) span.rotate {
	animation: rotation 3s infinite;
}

body.expanded .main-menu {
	display: none;
}

body.expanded .main {
	left: 1em;
}

/** 布局相关 */
.top-nav {
	border-radius: 0 !important;
	position: fixed;
	width: 100%;
	z-index: 1000;
	overflow-x: auto;
	border: 0 !important;

	img.avatar {
		width: 1.6em !important;
		height: 1.6em !important;
		padding: 0.2em;
		background: #fff;
		border-radius: 0.9em;
		margin-right: 0.5em !important;
	}

	em {
		font-style: normal;
		font-size: 0.9em;
		padding-left: 0.2em;
	}

	.item {
		.hover-span {
			span {
				display: none;
			}
		}
	}

	.item:hover {
		.hover-span {
			span {
				display: inline;
			}
		}
	}

	.item.red {
		color: red !important;
	}
}

.top-nav.theme1 {
	background: #14539A !important;
}

.top-nav.theme2 {
	background: #276AC6 !important;
}

.top-nav.theme3 {
	background: #007D9C !important;
}

.top-nav.theme4 {
	background: #A12568 !important;
}

.top-nav.theme5 {
	background: #1C7947 !important;
}

.top-nav::-webkit-scrollbar {
	height: 2px;
}


/** 顶部菜单 **/
.top-secondary-menu {
	position: fixed;
	top: 2.6em;
	left: 8.2em;
	right: 0;
	z-index: 100;
	background: white;
}

.top-secondary-menu .menu {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	border-radius: 0 !important;
}

.top-secondary-menu .menu var {
	font-style: normal;
}

.top-secondary-menu .divider {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

@media screen and (max-width: 512px) {
	.top-secondary-menu {
		left: 4em;
	}
}

/** 右侧主操作区 **/
.main {
	position: absolute;
	left: 22em;
	top: 5.6em;
	padding-bottom: 5em;
	padding-right: 0.2em;
	right: 1em;


	.main-box {

	}
}

@media screen and (max-width: 512px) {
	.main {
		left: 4em;

		.main-box {
			display: block;
		}
	}
}

.main.without-menu {
	left: 9em;
}

.main.without-secondary-menu {
	top: 2.9em;
}

@media screen and (max-width: 512px) {
	.main.without-menu {
		left: 4em;
	}
}

.main table td.title {
	width: 10em;
}

.main table td.middle-title {
	width: 14em;
}

.main table td {
	vertical-align: top;
}

.main table td.color-border {
	border-left: 1px #276ac6 solid !important;
}

.main table td.vertical-top {
	vertical-align: top;
}

.main table td.vertical-middle {
	vertical-align: middle;
}

.main table td[colspan="2"] a {
	font-weight: normal;
}

.main table td em {
	font-weight: normal;
	font-style: normal;
	font-size: 0.9em;
}


.main table td em.grey {
	color: grey;
}

.main h3 {
	font-weight: normal;
	margin-top: 1em !important;
	position: relative;
}

.main h3 span {
	font-size: 0.8em;
}

.main h3 span.label {
	color: #6435c9;
}

.main h3 a {
	margin-left: 1em;
	font-size: 14px !important;
	right: 1em;
}

.main h4 {
	font-weight: normal;
}

.main form h4 {
	margin-top: 0.6em;
}

.main td span.small {
	font-size: 0.8em;
}

.main .button.mini {
	font-size: 0.8em;
	padding: 0.2em;
	margin-left: 1em;
}

.main-menu {
	position: fixed;
	/**top: 1.05em;**/
	top: 2em;
	bottom: 0;
	overflow-y: auto;
	z-index: 10;

	.menu {
		border: 0 !important;
		box-shadow: none !important;
	}
}

.main-menu.theme1 {
	background: #14539A !important;

	.menu {
		background: #14539A !important;
	}
}

.main-menu.theme2 {
	background: #276AC6 !important;

	.menu {
		background: #276AC6 !important;
	}
}

.main-menu.theme3 {
	background: #007D9C !important;

	.menu {
		background: #007D9C !important;
	}
}

.main-menu.theme4 {
	background: #A12568 !important;

	.menu {
		background: #A12568 !important;
	}
}

.main-menu.theme5 {
	background: #1C7947 !important;

	.menu {
		background: #1C7947 !important;
	}
}

.main-menu::-webkit-scrollbar {
	width: 2px;
}

.main {
	.tab-menu {
		margin-top: 1em !important;
		margin-bottom: 0 !important;
		overflow-x: auto;
		overflow-y: hidden;

		.item {
			padding: 1em !important;

			var {
				font-style: normal;
			}

			span {
				font-size: 0.8em;
				padding-left: 0.3em;
			}

			.icon {
				margin-left: 0.6em;
			}
		}

		.item.active {
			background: #f8f8f9 !important;
		}
	}

	.tab-menu::-webkit-scrollbar {
		height: 4px;
	}
}


.main .go-top-btn {
	position: fixed;
	right: 2.6em;
	bottom: 2em;
	font-size: 2em;
	line-height: 1.4em;
	border-radius: 1em;
	z-index: 999999;
	background: white;
}

/** 右侧文本子菜单 **/
.text.menu {
	overflow-x: auto;
}

.text.menu::-webkit-scrollbar {
	width: 4px;
	height: 4px;
}

/** 脚部相关样式 **/
#footer {
	position: fixed;
	bottom: 0;
	text-align: left;
	color: gray;
	width: 100%;
	border-radius: 0 !important;
	z-index: 10;
	overflow-x: auto;
}

#footer::-webkit-scrollbar {
	height: 2px;
}

#footer a {
	font-size: 0.9em;
}

#footer a form {
	display: none;
}

#footer a:hover span, #footer a:active span {
	display: none;
}

#footer a:hover form, #footer a:active form {
	display: block;
}

#footer form input {
	padding: 0;
	margin: 0;
}

#footer-outer-box {
	z-index: 999999;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.8);
	bottom: 2.6em;
}

#footer-outer-box .qrcode {
	width: 20em;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -14em;
	margin-left: -10em;
}

#footer-outer-box .qrcode img {
	width: 100%;
}

#footer-outer-box .qrcode a {
	position: absolute;
	right: 0.5em;
	top: 0.5em;
}

@media screen and (max-width: 512px) {
	#footer-outer-box .qrcode {
		margin-left: 0;
		left: 3.5em;
	}
}

/** Vue **/
[v-cloak] {
	display: none !important;
}

/** auto complete **/
.autocomplete-box .menu {
	background: #eee !important;
}

.autocomplete-box .menu::-webkit-scrollbar {
	width: 4px;
}

.autocomplete-box .menu .item {
	border-top: none !important;
}

select.auto-width {
	width: auto !important;
}

/** column **/
@media screen and (max-width: 512px) {
	.column:not(.one) {
		width: 100% !important;
	}
}

// label
label[for] {
	cursor: pointer !important;
}

label.blue {
	color: #2185d0 !important;
}

/** Menu **/
.first-menu .menu.text {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.first-menu .divider {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.second-menu .menu.text {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.second-menu .menu.text em {
	font-style: normal;
}

.second-menu .divider {
	margin-top: 0 !important;
}

.menu a {
	outline: none;
}

/** var **/
span.olive, var.olive {
	color: #b5cc18 !important;
}

span.dash {
	border-bottom: 1px dashed grey;
}

var.normal {
	font-style: normal;
}

/** checkbox **/
.checkbox label a, .checkbox label {
	font-size: 0.9em !important;
}

.checkbox label {

}

/** page **/
.page {
	margin-top: 1em;

	border-left: 1px solid #ddd;

	a {
		display: inline-block;
		background: #fafafa;
		color: #666;
		padding: 6px 12px;
		margin: 0;
		font-size: 0.9em;
		border: 1px solid #ddd;
		border-left: 0;
	}

	a.active {
		background: #2185d0 !important;
		color: white;
	}

	a:hover {
		background: #eee;
	}

	select {
		padding-top: 0.3em !important;
		padding-bottom: 0.3em !important;
	}
}

/** popup **/
.swal2-html-container {
	overflow-x: hidden;
}

.swal2-close, .swal2-close:focus {
	border: 0;
}

.swal2-confirm:focus, .swal2-cancel:focus {
	border: 3px #ddd solid !important;
}

.swal2-confirm, .swal2-cancel {
	border: 3px #fff solid !important;
}

.swal2-cancel {
	margin-left: 2em !important;
}

/** 排序 **/
.sortable-ghost {
	background: #ddd !important;
	opacity: 0.1;
}

.sortable-drag {
	opacity: 1.0;
}

.icon.handle {
	cursor: pointer;
}

.label.port-label {
	margin-top: 0.4em !important;
	margin-bottom: 0.4em !important;
	display: block;
	line-height: 1.5;
}

// .label
.label {
	word-break: break-all;
}

td .label.small {
	margin-bottom: 0.2em !important;
}

// td
td {
	word-break: break-all;
}

// codemirror
.source-code-box {
	.CodeMirror {
		border: 1px solid #eee;
		height: auto !important;
	}

	.CodeMirror-vscrollbar {
		width: 6px;
		border-radius: 3px !important;
	}

	.CodeMirror-vscrollbar::-webkit-scrollbar-thumb {
		border-radius: 2px;
	}
}

// 表格
.scroll-box {
	overflow-y: auto;
}

.scroll-box::-webkit-scrollbar {
	width: 4px;
}

// input
input.error {
	border: 1px #e0b4b4 solid !important;
}

// textarea
textarea.wide-code {
	font-family: Menlo, Monaco, "Courier New", monospace !important;
	line-height: 1.6 !important;
}

// combo-box
.combo-box .menu {
	max-height: 17em;
	overflow-y: auto;
	position: absolute;
	border: rgba(129, 177, 210, 0.81) 1px solid;
	border-top: 0;
	z-index: 100
}

.combo-box .menu::-webkit-scrollbar {
	width: 4px;
}